From 77cf6cd406ff0ce3d693b5c1a6ebb02681833c34 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sun, 3 May 2020 11:39:58 -0400 Subject: [PATCH] frame: Don't queue a resize if xalign changes We only need to allocate children in this case. While we touch it, rewrite the setter to modern style. --- gtk/gtkframe.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/gtk/gtkframe.c b/gtk/gtkframe.c index 26880beb20..6381e6974d 100644 --- a/gtk/gtkframe.c +++ b/gtk/gtkframe.c @@ -461,16 +461,12 @@ gtk_frame_set_label_align (GtkFrame *frame, g_return_if_fail (GTK_IS_FRAME (frame)); xalign = CLAMP (xalign, 0.0, 1.0); + if (priv->label_xalign == xalign) + return; - g_object_freeze_notify (G_OBJECT (frame)); - if (xalign != priv->label_xalign) - { - priv->label_xalign = xalign; - g_object_notify_by_pspec (G_OBJECT (frame), frame_props[PROP_LABEL_XALIGN]); - } - - g_object_thaw_notify (G_OBJECT (frame)); - gtk_widget_queue_resize (GTK_WIDGET (frame)); + priv->label_xalign = xalign; + g_object_notify_by_pspec (G_OBJECT (frame), frame_props[PROP_LABEL_XALIGN]); + gtk_widget_queue_allocate (GTK_WIDGET (frame)); } /** -- 2.30.2